package com.gpt.article.mapper;

import java.util.List;
import com.gpt.article.domain.GptGenArticle;
import com.gpt.article.domain.GptGenArticleContent;
import com.gpt.article.domain.GptSpiderArticle;

/**
 * 文章生成Mapper接口
 * 
 * @author zhuzi
 * @date 2023-10-24
 */
public interface GptGenArticleMapper 
{
    /**
     * 查询文章生成
     * 
     * @param id 文章生成主键
     * @return 文章生成
     */
    public GptGenArticle selectGptGenArticleById(Long id);

    /**
     * 查询文章生成列表
     * 
     * @param gptGenArticle 文章生成
     * @return 文章生成集合
     */
    public List<GptGenArticle> selectGptGenArticleList(GptGenArticle gptGenArticle);

    /**
     * 新增文章生成
     * 
     * @param gptGenArticle 文章生成
     * @return 结果
     */
    public int insertGptGenArticle(GptGenArticle gptGenArticle);

    /**
     * 修改文章生成
     * 
     * @param gptGenArticle 文章生成
     * @return 结果
     */
    public int updateGptGenArticle(GptGenArticle gptGenArticle);

    /**
     * 删除文章生成
     * 
     * @param id 文章生成主键
     * @return 结果
     */
    public int deleteGptGenArticleById(Long id);

    /**
     * 批量删除文章生成
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteGptGenArticleByIds(Long[] ids);

    /**
     * 批量删除生成文章内容
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteGptGenArticleContentByIds(Long[] ids);
    
    /**
     * 批量新增生成文章内容
     * 
     * @param gptGenArticleContentList 生成文章内容列表
     * @return 结果
     */
    public int batchGptGenArticleContent(List<GptGenArticleContent> gptGenArticleContentList);
    

    /**
     * 通过文章生成主键删除生成文章内容信息
     * 
     * @param id 文章生成ID
     * @return 结果
     */
    public int deleteGptGenArticleContentById(Long id);
    /**
     * 通过采集文章md5删除采集文章内容信息
     *
     * @param urlMd5 采集文章md5
     * @return 结果
     */
    public int deleteGptGenArticleContentByMd5s(String[] urlMd5);

    public List<GptGenArticle> selectGptGenArticleContentByMd5s(String[] urlMd5);

    public List<GptGenArticle> getSelectedArticles(Long[] ids);

    public List<GptGenArticle> selectGptGenArticleListByPs(GptGenArticle gptGenArticle);
}
